/**
 * =================================================================
 * 版权所有 2011-2013 深圳市泰海网络科技服务有限公司，并保留所有权利
 * -----------------------------------------------------------------
 * 这不是一个自由软件！您不能在任何未经允许的前提下对程序代码进行修改和使用；
 * 不允许对程序代码以任何形式任何目的的再发布
 * =================================================================
 */
package com.imoney.framework.base.utils;

/**
 * 类说明：<br>
 * 
 * <p>
 * 详细描述：<br>
 * 
 * </p>
 * 
 * <pre>
 * ——————————————————————————————————————————————————————————————————
 * |		修改人		|		修改时间			|		修改原因
 * ——————————————————————————————————————————————————————————————————
 * |	zengxx 曾宪新	|		2013-3-26		|	
 * ——————————————————————————————————————————————————————————————————
 * </pre>
 * 
 * @author zengxx 曾宪新(Xavier.zeng)
 * 
 *         CreateDate: 2013-3-26
 */
public class StringUtils {

	/****
	 * 判断字符串是否为空
	 * 
	 * @param str
	 *            输入的字符串
	 * @return true str为空；false str不为空
	 */
	public static boolean isEmpty(String str) {
		return str == null || str.length() < 1;
	}

	/****
	 * 判断字符串是否不为空
	 * 
	 * @param str
	 *            输入的字符串
	 * @return true str不为空；false str为空
	 */
	public static boolean isNotEmpty(String str) {
		return str == null ? false : str.length() > 0;
	}
	
	/**
	 * 检查对象是否为数字型字符串,包含负数开头的。
	 */
	public static boolean isNumeric(Object obj) {
		
		return true;
	}

	/**
	 * 方法说明：判断字符串数组中是否包含指定的字符串<br>
	 * 
	 * @param array
	 * @param value
	 * @return
	 */
	public static boolean contains(String[] array, String value) {
		if (null == array) {
			return false;
		}

		for (String val : array) {
			if (val.equals(value)) {
				return true;
			}
		}

		return false;
	}
	
	/**
	 * 方法说明：向后(右)填充字符串
	 * @param str 在该字符串前后填充
	 * @param len 填充长度
	 * @param pad 填充的字符串
	 * @return
	 */
	public static String rpad(String str, int len, String pad) {
		if (isEmpty(str)) {
			return str;
		}
		StringBuffer sb = new StringBuffer();
		for (int i=0;i<len;i++){
			sb.append(pad);
		}
		sb.insert(0, str);
		
		return sb.toString();
	}
	
	/**
	 * 方法说明：向前(左)填充字符串
	 * @param str 在该字符串前后填充
	 * @param len 填充长度
	 * @param pad 填充的字符串
	 * @return
	 */
	public static String lpad(String str, int len, String pad) {
		if (isEmpty(str)) {
			return str;
		}
		StringBuffer sb = new StringBuffer();
		for (int i=0;i<len;i++){
			sb.append(pad);
		}
		sb.append(str);
		
		return sb.toString();
	}
}
